// 引入用来发送请求的方法
import { request } from "../../request/index.js"

// pages/category/category.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    // 左侧的菜单数据
    leftMenuList:[],
    // 右侧的商品数据
    rightContent:[],
    // 被点击的左侧的菜单
    currentIndex:0,
    // 右侧内容的滚动条距离顶部的距离
    scrollTop:0
  },

  // 接口的返回数据
  Cates:[],

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    const Cates=wx.getStorageSync('Cates')
    if(!Cates){
      this.getCates()
    }else{
      if(Date.now()-Cates.time>5000*10){
        this.getCates()
      }else{
        this.Cates=Cates.data
        let leftMenuList = this.Cates.map(v => v.cat_name)
        let rightContent = this.Cates[0].children
        this.setData({
          leftMenuList,
          rightContent
        })
      }
    }
  },
  // 获取分类数据
  async getCates () {
    // request({
    //   url:'/categories'
    // }).then(res => {
    //   this.Cates=res.data.message

    //   // 把接口数据存入到本地存储中
    //   wx.setStorageSync('Cates', {time:Date.now(),data:this.Cates});
    //   // 构造左侧的大菜单数据
    //   let leftMenuList = this.Cates.map(v => v.cat_name)
    //   // 构造右侧的商品数据
    //   let rightContent = this.Cates[0].children
    //   this.setData({
    //     leftMenuList,
    //     rightContent
    //   })
    // })

    const res=await request({url:'/categories'})
    this.Cates=res
    // 把接口数据存入到本地存储中
    wx.setStorageSync('Cates', {time:Date.now(),data:this.Cates});
    // 构造左侧的大菜单数据
    let leftMenuList = this.Cates.map(v => v.cat_name)
    // 构造右侧的商品数据
    let rightContent = this.Cates[0].children
    this.setData({
      leftMenuList,
      rightContent
    })

  },
  // 左侧菜单的点击事件
  handleItemTap (e) {
    const {index} = e.currentTarget.dataset
    let rightContent = this.Cates[index].children
    this.setData({
      currentIndex:index,
      rightContent,
      scrollTop:0
    })
  }
})